Prvnich x zaznamu

Otázka od: Ales Kerner

20. 11. 2002 11:26

Nevite nekdo, jak v IB udelat to, aby mi select vratil pouze treba prvnich
10 zaznamu?

Dik za pomoc

Ales


---
Odchozí zpráva neobsahuje viry.
Zkontrolováno antivirovým systémem AVG (http://www.grisoft.cz).
Verze: 6.0.419 / Virová báze: 235 - datum vydání: 13.11.2002

Odpovedá: tomsir1.edu@mail.cez.cz

20. 11. 2002 11:38




SELECT neco FROM nekde WHERE necojineho LIMIT 10

Radek





Ales Kerner <kerner@metalcom.cz>@clexpert.cz on 20.11.2002 10:02:03

Odpovězte prosím - delphi-l@clexpert.cz

Odesláno kým: delphi-l-owner@clexpert.cz


Komu: <delphi-l@clexpert.cz>
Kopie:
Předmět: Prvnich x zaznamu


Nevite nekdo, jak v IB udelat to, aby mi select vratil pouze treba prvnich
10 zaznamu?

Dik za pomoc

Ales


---
Odchozí zpráva neobsahuje viry.
Zkontrolováno antivirovým systémem AVG (http://www.grisoft.cz).
Verze: 6.0.419 / Virová báze: 235 - datum vydání: 13.11.2002


Odpovedá: Aleš Kerner

20. 11. 2002 11:49

Ale me ten limit v IB nefunguje!!!

SELECT neco FROM nekde WHERE necojineho LIMIT 10

Nevite nekdo, jak v IB udelat to, aby mi select vratil pouze treba prvnich
10 zaznamu?

Dik za pomoc

Ales


---
Odchozí zpráva neobsahuje viry.
Zkontrolováno antivirovým systémem AVG (http://www.grisoft.cz).
Verze: 6.0.419 / Virová báze: 235 - datum vydání: 13.11.2002


Odpovedá: Jan Naiser

20. 11. 2002 12:20

Ahoj,

nasel jsem ve svem archivu napad, ktery kdysi probehl konferenci. Treba
pomuze:
------
pomoci specialniho pouziti generatoru lze ...
pri zahajeni session vytvorit generator s unikatnim jmenem (unikatnim v
ramci vsech existujicich pripojeni k databazi, pripojim-li se pod jednim
uzivatelskym jmenem k databazi 3x, musi se i tak vytvorit 3 ruzne
generatory - generatory totiz nejsou nijak ovlivnene urovni izolace
transakci a pri stejnem nazvu generatoru by vysledky neodpovidaly
ocekavani   )
create generator TEMPGEN;

/* takhle se vybere 20 zaznamu */
set generator TEMPGEN to 0;
select *
from dodav
where (gen_id(TEMPGEN, 1) <= 20);

/* takhle se vyberou zaznamy 51-100 */
set generator TEMPGEN to 0;
select *
from dodav
where (gen_id(TEMPGEN, 1) >= 51) and (gen_id(TEMPGEN, 0) < 100);

pri ukonceni session pak provest
delete from RDB$GENERATORS where RDB$GENERATOR_NAME = 'TEMPGEN';
------

Honza.

----- Original Message -----
From: "Aleš Kerner" <kerner@metalcom.cz>
To: <delphi-l@clexpert.cz>
Sent: Wednesday, November 20, 2002 11:45 AM
Subject: Re: Prvnich x zaznamu


> Ale me ten limit v IB nefunguje!!!
>
> SELECT neco FROM nekde WHERE necojineho LIMIT 10

Odpovedá: Martin Ocenas

20. 11. 2002 12:31

Na IB sa to da urobit len cez Stored Procedure.

n = 0;
For Select ....
....
do
begin
 n = n + 1;
 if (n <= 10) then suspend;
end

> -----Original Message-----
> From: Aleš Kerner [mailto:kerner@metalcom.cz]
> Ale me ten limit v IB nefunguje!!!
>
> SELECT neco FROM nekde WHERE necojineho LIMIT 10
>
> Nevite nekdo, jak v IB udelat to, aby mi select vratil pouze
> treba prvnich 10 zaznamu?
>
> Dik za pomoc
>
> Ales

Odpovedá: Jaroslav Uher

20. 11. 2002 12:37

Ahoj,

On 20 Nov 2002 at 11:45, Ale Kerner wrote:

> Ale me ten limit v IB nefunguje!!!
>
> SELECT neco FROM nekde WHERE necojineho LIMIT 10
>
> Nevite nekdo, jak v IB udelat to, aby mi select vratil pouze treba
> prvnich 10 zaznamu?

SELECT FIRST 10 pole FROM tabulka

Jarek Uher